#!/bin/bash
set -e

# 使用 $(pwd) 获取当前路径
BUILD_DIR="$(pwd)/build"

# 判断 build 目录是否存在，注意 [] 内部空格要正确
if [ ! -d "$BUILD_DIR" ]; then
    mkdir "$BUILD_DIR"
fi

# 清空 build 目录内容
rm -rf "$BUILD_DIR"/*

# 进入 build 目录后执行 cmake 和 make
cd "$BUILD_DIR" &&
    cmake .. &&
    make

cd ..

# 将头文件拷贝到 /usr/include/mymuduo，确保目录存在
if [ ! -d /usr/include/mymuduo ]; then
    mkdir /usr/include/mymuduo
fi

# 这里假设所有 .h 文件都位于脚本所在目录
# 注意直接用 *.h 展开，而不是把 ls *.h 用引号
for header in *.h; do
    # 检查是否匹配到任何文件
    if [ -f "$header" ]; then
        cp "$header" /usr/include/mymuduo
    fi
done

# 复制库文件，假设在当前目录的 lib 子目录下
cp "$(pwd)/lib/libmymuduo.so" /usr/lib

# 更新共享库缓存
ldconfig
